// router/index.js
import { createRouter, createWebHistory } from 'vue-router'

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    { path: '/', redirect: '/todo' },
    { path: '/todo', name: 'ToDo', component: () => import('@/views/ToDo.vue') },
    {
      path: '/color-choice',
      name: 'ColorChoice',
      component: () => import('@/views/ColorChoice.vue'),
    },
    { path: '/v_if_show', name: 'v_if_show', component: () => import('@/views/v_if_show.vue') },
    {
      path: '/change_label',
      name: 'change_label',
      component: () => import('@/views/change_label.vue'),
    },
    { path: '/sort_list', name: 'sort_list', component: () => import('@/views/sort_list.vue') },
    {
      path: '/button_test',
      name: 'button_test',
      component: () => import('@/views/button_test.vue'),
    },
    { path: '/gift', name: 'GiftPage', component: () => import('@/views/GiftPage.vue') },
    { path: '/parent', name: 'ParentView', component: () => import('@/views/ParentView.vue') },
    { path: '/slot-demo', name: 'SlotDemo', component: () => import('@/views/SlotDemo.vue') },
    {
      path: '/dynamic-async-demo',
      name: 'DynamicAndAsyncDemo',
      component: () => import('@/views/DynamicAndAsyncDemo.vue'),
    },
    { path: '/card_test', name: 'card_test', component: () => import('@/views/card_test.vue') },
    { path: '/demo', name: 'DemoView', component: () => import('@/views/DemoView.vue') },
    {
      path: '/sibling-demo',
      name: 'SiblingDemo',
      component: () => import('@/views/SiblingDemo.vue'),
    },
    { path: '/mitt-demo', name: 'MittDemo', component: () => import('@/views/MittDemo.vue') },
    { path: '/counter', name: 'CounterView', component: () => import('@/views/CounterView.vue') },
    {
      path: '/event-demo',
      name: 'EventDemoView',
      component: () => import('@/views/EventDemoView.vue'),
    },
    {
      path: '/counter-demo',
      name: 'CounterDemoView',
      component: () => import('@/views/CounterDemoView.vue'),
    },
    {
      path: '/form-input',
      name: 'FormInputView',
      component: () => import('@/views/FormInputView.vue'),
    },
    {
      path: '/multi-line-input',
      name: 'MultiLineInput',
      component: () => import('@/views/MultiLineInput.vue'),
    },
    {
      path: '/form-controls',
      name: 'FormControlsView',
      component: () => import('@/views/FormControlsView.vue'),
    },
    {
      path: '/form-validation',
      name: 'FormValidationView',
      component: () => import('@/views/FormValidationView.vue'),
    },
    {
      path: '/custom-input',
      name: 'CustomInputView',
      component: () => import('@/views/CustomInputView.vue'),
    },
    {
      path: '/file-upload',
      name: 'FileUploadView',
      component: () => import('@/views/FileUploadView.vue'),
    },
    {
      path: '/transition-demo',
      name: 'transition_demo',
      component: () => import('@/views/Transition/transition-demo.vue'),
    },
    {
      path: '/slide-demo',
      name: 'slide_demo',
      component: () => import('@/views/Transition/slide-demo.vue'),
    },
    {
      path: '/js-transition-demo',
      name: 'js_transition_demo',
      component: () => import('@/views/Transition/js-transition-demo.vue'),
    },
    {
      path: '/list-transition-demo',
      name: 'list_transition_demo',
      component: () => import('@/views/Transition/list-transiton-demo.vue'),
    },
    {
      path: '/card-list-demo',
      name: 'card_list_demo',
      component: () => import('@/views/Transition/card-list-demo.vue'),
    },
    {
      path: '/state-transition-demo',
      name: 'state_transition_demo',
      component: () => import('@/views/Transition/state-transition-demo.vue'),
    },
    {
      path: '/animate-css-demo',
      name: 'animate_css_demo',
      component: () => import('@/views/Transition/animate-css-demo.vue'),
    },
    {
      path: '/carousel-demo',
      name: 'carousel_demo',
      component: () => import('@/views/Transition/carousel-container.vue'),
    },
  ],
})

export default router
